package TUILayer;

import java.util.Scanner;
/**
 * 
 * Brugerflade - Hovedmenu
 * Applikationens startside:
 * Opretter en instans af klassen HovedMenuUI, hvorfra de andre UI'er kaldes
 * 
 * @author (GP3 Project Solutions) 
 * @version (02-06-2011 JSM: Oprettelse af klassen)
 * 
 */
public class HovedmenuUI
{
    // instans variabler
    private VaresalgUI varesalgUI;
    private LagerUI lagerUI;
    private UdlejningUI udlejningUI;
    private KunderUI kunderUI;
    private MedarbejdereUI medarbejdereUI;
    private LeverandoerUI leverandoerUI;
   
   /**
     * Konstruktør for klassen HovedMenuUI
     */
   public HovedmenuUI()
   {
        varesalgUI = new VaresalgUI();
        lagerUI = new LagerUI();
        udlejningUI = new UdlejningUI();
        kunderUI = new KunderUI();
        medarbejdereUI = new MedarbejdereUI();
        leverandoerUI = new LeverandoerUI();
   }
   
   /**
    * Kalder hovedmenuen og kalder på baggrund af brugervalg en bestemt UI
    */
   public void hovedMenuStart()
   {
        boolean exit=false;
        while (!exit) 
        {
            int choise = udskrivHovedMenu();
            if(choise == 1)
            {
                startVaresalgUI();
            }
            else{
                    if(choise == 2){ 
                        startLagerUI();
                    }
                    else{
                        if(choise == 3){
                            //startUdlejningUI();
                            }//end if
                        else{
                        if(choise == 4){
                        //start kunde-controller 
                           startKunderUI();
                            }//end if
                        else{
                        if(choise == 5){
                        //start medarbejder-controller 
                           startMedarbejdereUI();
                            }//end if
                        else{
                        if(choise == 6){
                        //start leverandør-controller 
                           startLeverandoerUI();
                            }//end if
                        else{
                            writeEnd();
                            exit = true;
                        }//end else
                    }// end else
             }//end else
            }
            }
            }
        }//end while
    }//end start
    
     /**
     * Genererer hovedmenuen
     */
    private int udskrivHovedMenu()
    {       
            Scanner keyboard = new Scanner(System.in);
            System.out.println("\f*** HovedMenu ***");
            System.out.println(" (1) Varesalg");
            System.out.println(" (2) Lager");
            System.out.println(" (3) Udlejning");
            System.out.println(" (4) Kunder");
            System.out.println(" (5) Medarbejdere");
            System.out.println(" (6) Leverandøer");
            System.out.println(" (7) Log ud");
            System.out.print("\n Foretag valg: ");
            
            int choise = keyboard.nextInt();
            System.out.println("\f");
            return choise;
    }
    
    /**
     * Starter brugerfladen for varesalg
     */
    private void startVaresalgUI()
    {
        varesalgUI = new VaresalgUI();
        varesalgUI.start();
    }
    
    /**
     * Starter brugerfladen for lagersalg
     */
    private void startLagerUI()
    {
        lagerUI = new LagerUI();
        lagerUI.start();
    }
    
    /**
     * Starter brugerfladen for udlejning
     */
    private void startUdlejningUI()
    {
        udlejningUI = new UdlejningUI();
        udlejningUI.start();
    }
    
    /**
     * Starter brugerfladen for kunder
     */
    private void startKunderUI()
    {
        kunderUI = new KunderUI();
        kunderUI.start();
    }
   
    /**
     * Starter brugerfladen for medarbejdere
     */
    private void startMedarbejdereUI()
    {
        medarbejdereUI = new MedarbejdereUI();
        medarbejdereUI.start();
    }
    
    /**
     * Starter brugerfladen for leverandører
     */
    private void startLeverandoerUI()
    {
        leverandoerUI = new LeverandoerUI();
        leverandoerUI.start();
    }
    
    /**
     * Meddeler brugeren, at systemet lukker ned
     */
    private void writeEnd()
    {
        System.out.println(" Systemet lukker ned! ");
    }
    
    /**
     * Startmetode for hovedmenuen
     * @param args Ikke anvendt
     */
    public static void main(String [] args)
     {
         HovedmenuUI hovedMenu = new HovedmenuUI();
         hovedMenu.hovedMenuStart();
     }
 } 

     
             

    

